package cn.stylefeng.guns.modular.business.frequency.transport.model.result;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @Description:
 * @Author jzy
 * @Date 2020/10/20 0020
 **/
@Data
public class TransportVO {

    private Long id;

    private String transportNo;

    @ApiModelProperty("承运类型")
    private Integer type;

    private String startCode;

    private String destinationCode;

    private Integer status;

    @ApiModelProperty("承运公司")
    private String cargoCompany;

    @ApiModelProperty("司机名称")
    private String driverName;

    //网点id
    private Long siteId;

    @ApiModelProperty("司机电话")
    private String driverPhone;

    @ApiModelProperty("司机身份证")
    private String driverCardNumber;

    @ApiModelProperty("车牌号")
    private String licensePlateNumber;

    @ApiModelProperty("结算人")
    private String settlementUser;

    @ApiModelProperty("结算人电话")
    private String settlementPhone;

    @ApiModelProperty("结算人身份证")
    private String settlementCardNumber;

    @ApiModelProperty("代收金额")
    private BigDecimal collectionFee;

    @ApiModelProperty("应付司机金额")
    private BigDecimal driverFee;

    @ApiModelProperty("欠付金额")
    private BigDecimal backReturnFee;

    @ApiModelProperty("预付款")
    private BigDecimal prepaymentFee;


    /** 发运的分段信息  预留板块  途经点 */
    private List<TransportLevelVO> transportLevelVOList;

    private String line;

    /**
     * 运单修改类型
     * 0：全车只有一个发运人，可全部修改
     * 1：主发 + 装车，主发修改，可修改运单基本信息
     * 2：主发 + 装车，装车人修改，不可修改运单基本信息
     */
    private Integer updateType;

    /**
     * 发车时间
     */
    private Date createTime;

    /**
     * 运单总的分段个数，用来限制只有一个分段时，签收完不可装车
     */
    private Integer levelCount;

    private Long supplierId;

    private Long settlementId;

    private Long driverId;

    @ApiModelProperty("运输方式：1.公路 2.铁路")
    private Integer transportType;
    @ApiModelProperty("车厢号")
    private String compartmentNo;
    @ApiModelProperty("票号")
    private String ticketNo;

    private Long  orderId;
}
